using Abp.Application.Services;
using Abp.Application.Services.Dto;
using SOEI.Solution.DomainEntities.PurQualificationAudit.Dtos;
using System.Collections.Generic;
using System.Threading.Tasks;

namespace SOEI.Solution.DomainEntities.PurQualificationAudit
{
    public interface IPurFamilyMemberAppService : IApplicationService
    {
        #region -------------------------------------------------辅助工具生成---------------------------------------------- 
        /// <summary>
        /// 获取的分页列表集合
        ///</summary>
        /// <param name="input"></param>
        /// <returns></returns>
        Task<PagedResultDto<PurFamilyMemberListDto>> GetPaged(GetPurFamilyMembersInput input);


        /// <summary>
        /// 通过指定id获取ListDto信息
        /// </summary>
        Task<PurFamilyMemberListDto> GetById(EntityDto<string> input);

        /// <summary>
        /// 返回实体的EditDto
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        Task<GetPurFamilyMemberForEditOutput> GetForEdit(EntityDto<string> input);

        /// <summary>
        /// 添加或者修改的公共方法
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        Task CreateOrUpdate(CreateOrUpdatePurFamilyMemberInput input);


        /// <summary>
        /// 删除
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        Task Delete(EntityDto<string> input);


        /// <summary>
        /// 批量删除
        /// </summary>
        Task BatchDelete(List<string> input);

        #endregion

        #region -------------------------------------------------用户自定义------------------------------------------------
        /*请在此扩展应用服务接口*/
        #endregion
    }
}
